[codex] Group project scopes in mobile thread lists#4314
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
ApprovabilityVerdict: Needs human review This PR introduces new project grouping functionality that merges projects across environments by repository identity, changing how thread lists are filtered and displayed. The scope of new logic and runtime behavior changes warrants human review. You can customize Macroscope's approvability policy. Learn more. |
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com>
6a06232 to
d089f8f
Compare
Co-authored-by: codex <codex@users.noreply.github.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
Bugbot Autofix is ON, but a cloud agent failed to start.
Reviewed by Cursor Bugbot for commit 7e09d54. Configure here.
Co-authored-by: codex <codex@users.noreply.github.com>
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc)
pingdotgg#4396) (#186) * [codex] Move project grouping to General settings (pingdotgg#4313) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 7609495) * [codex] Group project scopes in mobile thread lists (pingdotgg#4314) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 0542abc) * [codex] Move mobile project grouping to General settings (pingdotgg#4315) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 719c905) * [codex] Deduplicate connection failure messaging (pingdotgg#4367) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 315b273) * Restore grouped project filtering in Sidebar V2 (pingdotgg#4282) Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 3afb4a9) * [codex] restore Sidebar V2 project actions (pingdotgg#4373) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 57100fb) * [codex] Group projects in new-thread pickers (pingdotgg#4312) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit 9d9208c) * fix(web): restore dark composer toolbar styling (cherry picked from commit 9cbe50d) * Fix thread tooltip folder icon color (pingdotgg#4383) (cherry picked from commit 9798548) * fix(server): parse CLI version in update preflight (pingdotgg#4389) (cherry picked from commit 88c69ff) * fix(web): sidebar v2 polish — jump hints, working duration, in-flight fade, settled sort (pingdotgg#4274) Co-authored-by: Claude Fable 5 <noreply@anthropic.com> (cherry picked from commit ddd5a46) * Fix logical project grouping labels on mobile (pingdotgg#4391) Co-authored-by: codex <codex@users.noreply.github.com> (cherry picked from commit b3e5131) * Add preview color scheme controls and simplify project grouping (pingdotgg#4385) Co-authored-by: codex <codex@users.noreply.github.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com> (cherry picked from commit 79fe11b) * fix(cli): publish nightly branded favicons (pingdotgg#4372) (cherry picked from commit edb1240) * Fix thread loading flash (pingdotgg#4396) (cherry picked from commit 91dfe60) --------- Co-authored-by: Julius Marminge <julius0216@outlook.com> Co-authored-by: codex <codex@users.noreply.github.com> Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com> Co-authored-by: maria <maria@kuuro.net> Co-authored-by: Theo Browne <me@t3.gg> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>

Why
Mobile thread lists treat copies of the same repository in different environments as unrelated projects. Selecting one project can therefore hide threads from the other copy.
Root cause
Mobile list filtering accepts one physical project reference, while project presentation is expected to operate on logical repository groups.
Fix
Settings placement and startup preference behavior are intentionally excluded from this PR.
Verification
vp run --filter @t3tools/mobile typecheckNote
Group project scopes by repository identity in mobile thread lists
buildHomeProjectScopesandsortHomeProjectScopesin homeThreadList.ts to consolidate duplicate projects across environments into logical groups, sorted by recent thread/task activity.buildThreadListV2Itemsin threadListV2.ts to accept an array ofprojectRefsinstead of a single ref, enabling multi-environment project filtering.projectRefwithin the selected logical scope, so selecting a project may include threads from multiple environments.Macroscope summarized c71bc86.
Note
Medium Risk
Changes core list filtering and grouping logic for home/sidebar/v2 paths; behavior is well covered by new tests but wrong scope resolution could hide or mis-attribute threads.
Overview
Mobile home and sidebar thread lists now treat logical project groups (same repo across environments, including stale duplicate project IDs) as one filter scope instead of a single physical project ref.
buildHomeProjectScopesandsortHomeProjectScopesinhomeThreadList.tsderive grouped scopes with mergedprojectRefs, reuse them inbuildHomeThreadGroups, and improve new-thread target resolution when threads still point at stale project IDs.HomeScreenandThreadNavigationSidebarbuild project filter options from scopes, match selection by scope key or any member ref, and scope v1/v2 threads and pending tasks across all refs. Empty states use the group title.Thread List v2 takes
projectRefs(array) instead of oneprojectRef, so filtering includes every environment copy in the group.Reviewed by Cursor Bugbot for commit c71bc86. Bugbot is set up for automated code reviews on this repo. Configure here.